package com.alibaba.shopping_common.service;

import com.alibaba.shopping_common.pojo.Specification;
import com.alibaba.shopping_common.pojo.SpecificationOptions;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

import java.util.List;

/**
 * 商品规格
 */
public interface SpecificationService {

    /**
     * 新增商品规则
     * @param specification
     */
    void add(Specification specification);

    /**
     * 删除商品规格
     * @param ids
     */
    void delete(Long[] ids);

    /**
     * 更新商品规格信息
     * @param specification
     */
    void update(Specification specification);

    /**
     * 根据ID查询商品规则信息
     * @param id
     * @return
     */
    Specification findById(Long id);

    /**
     * 分页查询
     * @param page
     * @param size
     * @return
     */
    Page<Specification> search(int page,int size);

    /**
     * 根据产品类型ID查询所有的规格项
     * @param id
     * @return
     */
    List<Specification> findByProductTypeId(Long id);

    /**
     * 批量新增商品规格项
     * @param options
     */
    void addOption(SpecificationOptions options);

    /**
     * 批量删除规格项
     * @param ids
     */
    void deleteOption(Long [] ids);
}
